package edu.ccut.saturn.component;

/**
 * 数据映射规则信息。用于数据映射结点中描述字段的赋值规则。
 * 
 * @author 温建
 * @version 1.0 2008.9.09
 * 
 * @see SaturnDataMappingNodeInfo， SaturnDataMappingRuleInfo
 */
public interface IDataMappingRuleInfo {
	
	/**
	 * 设置待赋值的字段
	 * 
	 * @param key
	 */
	public void setKey(String key);
	
	/**
	 * 设置源数据的字段
	 * 
	 * @param value
	 */
	public void setValue(String value);
	
	/**
	 * 设置saturnData类型的源数据的变量名
	 * @param source
	 */
	public void setSource(String source);
	
	/**
	 * 设置源数据的数据项键值
	 * @param fullKey
	 */
	public void setFullKey(String fullKey);
	
	/**
	 * 获得待赋值的字段
	 * @return
	 */
	public String getKey();
	
	/**
	 * 获得源数据的字段。如果源数据为空则表示上下文中的普通变量
	 * @return
	 */
	public String getValue();
	
	/**
	 * 获得saturnData类型的源数据的键值，如果源数据不是saturnData类型返回的是null
	 * @return
	 */
	public String getSource();
	
	/**
	 * 获得源数据的数据项键值
	 * 
	 * @return
	 */
	public String getFullKey();
	
}
